export const searchIndex = [
  {
    "title": "",
    "headers": [],
    "path": "/",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "三.动画",
    "headers": [
      {
        "level": 2,
        "title": "1.关键帧",
        "slug": "_1-关键帧",
        "link": "#_1-关键帧",
        "children": []
      },
      {
        "level": 2,
        "title": "2.动画名称",
        "slug": "_2-动画名称",
        "link": "#_2-动画名称",
        "children": []
      },
      {
        "level": 2,
        "title": "3.动画持续时间",
        "slug": "_3-动画持续时间",
        "link": "#_3-动画持续时间",
        "children": []
      },
      {
        "level": 2,
        "title": "4.动画的运动方式",
        "slug": "_4-动画的运动方式",
        "link": "#_4-动画的运动方式",
        "children": []
      },
      {
        "level": 2,
        "title": "5.动画的延迟时间",
        "slug": "_5-动画的延迟时间",
        "link": "#_5-动画的延迟时间",
        "children": []
      },
      {
        "level": 2,
        "title": "6.结束状态",
        "slug": "_6-结束状态",
        "link": "#_6-结束状态",
        "children": []
      },
      {
        "level": 2,
        "title": "7.动画化执行顺序",
        "slug": "_7-动画化执行顺序",
        "link": "#_7-动画化执行顺序",
        "children": []
      },
      {
        "level": 2,
        "title": "8.动画循环次数",
        "slug": "_8-动画循环次数",
        "link": "#_8-动画循环次数",
        "children": []
      },
      {
        "level": 2,
        "title": "9.简写方式",
        "slug": "_9-简写方式",
        "link": "#_9-简写方式",
        "children": []
      },
      {
        "level": 2,
        "title": "10.动画停止",
        "slug": "_10-动画停止",
        "link": "#_10-动画停止",
        "children": []
      },
      {
        "level": 2,
        "title": "11.开源 CSS 动画库",
        "slug": "_11-开源-css-动画库",
        "link": "#_11-开源-css-动画库",
        "children": [
          {
            "level": 3,
            "title": "（1）animate.css 下载与引用",
            "slug": "_1-animate-css-下载与引用",
            "link": "#_1-animate-css-下载与引用",
            "children": []
          },
          {
            "level": 3,
            "title": "（2）使用方法",
            "slug": "_2-使用方法",
            "link": "#_2-使用方法",
            "children": []
          }
        ]
      }
    ],
    "path": "/blog/Animation/animation.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "一.过度",
    "headers": [
      {
        "level": 2,
        "title": "1.过渡属性的名称",
        "slug": "_1-过渡属性的名称",
        "link": "#_1-过渡属性的名称",
        "children": []
      },
      {
        "level": 2,
        "title": "2.过渡需要的时间",
        "slug": "_2-过渡需要的时间",
        "link": "#_2-过渡需要的时间",
        "children": []
      },
      {
        "level": 2,
        "title": "3.过渡的方式",
        "slug": "_3-过渡的方式",
        "link": "#_3-过渡的方式",
        "children": []
      },
      {
        "level": 2,
        "title": "4.过渡的延迟时间",
        "slug": "_4-过渡的延迟时间",
        "link": "#_4-过渡的延迟时间",
        "children": []
      },
      {
        "level": 2,
        "title": "5.简化写法",
        "slug": "_5-简化写法",
        "link": "#_5-简化写法",
        "children": []
      },
      {
        "level": 2,
        "title": "6.多重样式过渡",
        "slug": "_6-多重样式过渡",
        "link": "#_6-多重样式过渡",
        "children": []
      },
      {
        "level": 2,
        "title": "1.transform 变化属性",
        "slug": "_1-transform-变化属性",
        "link": "#_1-transform-变化属性",
        "children": []
      },
      {
        "level": 2,
        "title": "2.translate()位移函数",
        "slug": "_2-translate-位移函数",
        "link": "#_2-translate-位移函数",
        "children": []
      },
      {
        "level": 2,
        "title": "3.rotate()旋转函数",
        "slug": "_3-rotate-旋转函数",
        "link": "#_3-rotate-旋转函数",
        "children": []
      },
      {
        "level": 2,
        "title": "4.scale()缩放函数",
        "slug": "_4-scale-缩放函数",
        "link": "#_4-scale-缩放函数",
        "children": []
      },
      {
        "level": 2,
        "title": "5.skew()倾斜扭曲函数",
        "slug": "_5-skew-倾斜扭曲函数",
        "link": "#_5-skew-倾斜扭曲函数",
        "children": []
      },
      {
        "level": 2,
        "title": "6.变换函数的执行顺序",
        "slug": "_6-变换函数的执行顺序",
        "link": "#_6-变换函数的执行顺序",
        "children": []
      },
      {
        "level": 2,
        "title": "7.基点",
        "slug": "_7-基点",
        "link": "#_7-基点",
        "children": []
      },
      {
        "level": 2,
        "title": "8.3D 变化效果",
        "slug": "_8-3d-变化效果",
        "link": "#_8-3d-变化效果",
        "children": [
          {
            "level": 3,
            "title": "(1)透视",
            "slug": "_1-透视",
            "link": "#_1-透视",
            "children": []
          },
          {
            "level": 3,
            "title": "(2)旋转函数 x 轴和 y 轴",
            "slug": "_2-旋转函数-x-轴和-y-轴",
            "link": "#_2-旋转函数-x-轴和-y-轴",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "1.关键帧",
        "slug": "_1-关键帧",
        "link": "#_1-关键帧",
        "children": []
      },
      {
        "level": 2,
        "title": "2.动画名称",
        "slug": "_2-动画名称",
        "link": "#_2-动画名称",
        "children": []
      },
      {
        "level": 2,
        "title": "3.动画持续时间",
        "slug": "_3-动画持续时间",
        "link": "#_3-动画持续时间",
        "children": []
      },
      {
        "level": 2,
        "title": "4.动画的运动方式",
        "slug": "_4-动画的运动方式",
        "link": "#_4-动画的运动方式",
        "children": []
      },
      {
        "level": 2,
        "title": "5.动画的延迟时间",
        "slug": "_5-动画的延迟时间",
        "link": "#_5-动画的延迟时间",
        "children": []
      },
      {
        "level": 2,
        "title": "6.结束状态",
        "slug": "_6-结束状态",
        "link": "#_6-结束状态",
        "children": []
      },
      {
        "level": 2,
        "title": "7.动画化执行顺序",
        "slug": "_7-动画化执行顺序",
        "link": "#_7-动画化执行顺序",
        "children": []
      },
      {
        "level": 2,
        "title": "8.动画循环次数",
        "slug": "_8-动画循环次数",
        "link": "#_8-动画循环次数",
        "children": []
      },
      {
        "level": 2,
        "title": "9.简写方式",
        "slug": "_9-简写方式",
        "link": "#_9-简写方式",
        "children": []
      },
      {
        "level": 2,
        "title": "10.动画停止",
        "slug": "_10-动画停止",
        "link": "#_10-动画停止",
        "children": []
      },
      {
        "level": 2,
        "title": "11.开源 CSS 动画库",
        "slug": "_11-开源-css-动画库",
        "link": "#_11-开源-css-动画库",
        "children": [
          {
            "level": 3,
            "title": "（1）animate.css 下载与引用",
            "slug": "_1-animate-css-下载与引用",
            "link": "#_1-animate-css-下载与引用",
            "children": []
          },
          {
            "level": 3,
            "title": "（2）使用方法",
            "slug": "_2-使用方法",
            "link": "#_2-使用方法",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "1.单行文本溢出显示省略号",
        "slug": "_1-单行文本溢出显示省略号",
        "link": "#_1-单行文本溢出显示省略号",
        "children": []
      },
      {
        "level": 2,
        "title": "2.多行文本溢出显示省略号",
        "slug": "_2-多行文本溢出显示省略号",
        "link": "#_2-多行文本溢出显示省略号",
        "children": []
      },
      {
        "level": 2,
        "title": "3.利用伪类实现省略号",
        "slug": "_3-利用伪类实现省略号",
        "link": "#_3-利用伪类实现省略号",
        "children": []
      }
    ],
    "path": "/blog/Animation/",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "二.变化",
    "headers": [
      {
        "level": 2,
        "title": "1.transform 变化属性",
        "slug": "_1-transform-变化属性",
        "link": "#_1-transform-变化属性",
        "children": []
      },
      {
        "level": 2,
        "title": "2.translate()位移函数",
        "slug": "_2-translate-位移函数",
        "link": "#_2-translate-位移函数",
        "children": []
      },
      {
        "level": 2,
        "title": "3.rotate()旋转函数",
        "slug": "_3-rotate-旋转函数",
        "link": "#_3-rotate-旋转函数",
        "children": []
      },
      {
        "level": 2,
        "title": "4.scale()缩放函数",
        "slug": "_4-scale-缩放函数",
        "link": "#_4-scale-缩放函数",
        "children": []
      },
      {
        "level": 2,
        "title": "5.skew()倾斜扭曲函数",
        "slug": "_5-skew-倾斜扭曲函数",
        "link": "#_5-skew-倾斜扭曲函数",
        "children": []
      },
      {
        "level": 2,
        "title": "6.变换函数的执行顺序",
        "slug": "_6-变换函数的执行顺序",
        "link": "#_6-变换函数的执行顺序",
        "children": []
      },
      {
        "level": 2,
        "title": "7.基点",
        "slug": "_7-基点",
        "link": "#_7-基点",
        "children": []
      },
      {
        "level": 2,
        "title": "8.3D 变化效果",
        "slug": "_8-3d-变化效果",
        "link": "#_8-3d-变化效果",
        "children": [
          {
            "level": 3,
            "title": "(1)透视",
            "slug": "_1-透视",
            "link": "#_1-透视",
            "children": []
          },
          {
            "level": 3,
            "title": "(2)旋转函数 x 轴和 y 轴",
            "slug": "_2-旋转函数-x-轴和-y-轴",
            "link": "#_2-旋转函数-x-轴和-y-轴",
            "children": []
          }
        ]
      }
    ],
    "path": "/blog/Animation/transform.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "一.过度",
    "headers": [
      {
        "level": 2,
        "title": "1.过渡属性的名称",
        "slug": "_1-过渡属性的名称",
        "link": "#_1-过渡属性的名称",
        "children": []
      },
      {
        "level": 2,
        "title": "2.过渡需要的时间",
        "slug": "_2-过渡需要的时间",
        "link": "#_2-过渡需要的时间",
        "children": []
      },
      {
        "level": 2,
        "title": "3.过渡的方式",
        "slug": "_3-过渡的方式",
        "link": "#_3-过渡的方式",
        "children": []
      },
      {
        "level": 2,
        "title": "4.过渡的延迟时间",
        "slug": "_4-过渡的延迟时间",
        "link": "#_4-过渡的延迟时间",
        "children": []
      },
      {
        "level": 2,
        "title": "5.简化写法",
        "slug": "_5-简化写法",
        "link": "#_5-简化写法",
        "children": []
      },
      {
        "level": 2,
        "title": "6.多重样式过渡",
        "slug": "_6-多重样式过渡",
        "link": "#_6-多重样式过渡",
        "children": []
      }
    ],
    "path": "/blog/Animation/transition.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "文字超出部分变成省略号的三种方式",
    "headers": [
      {
        "level": 2,
        "title": "1.单行文本溢出显示省略号",
        "slug": "_1-单行文本溢出显示省略号",
        "link": "#_1-单行文本溢出显示省略号",
        "children": []
      },
      {
        "level": 2,
        "title": "2.多行文本溢出显示省略号",
        "slug": "_2-多行文本溢出显示省略号",
        "link": "#_2-多行文本溢出显示省略号",
        "children": []
      },
      {
        "level": 2,
        "title": "3.利用伪类实现省略号",
        "slug": "_3-利用伪类实现省略号",
        "link": "#_3-利用伪类实现省略号",
        "children": []
      }
    ],
    "path": "/blog/Animation/whiteSpace.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "动画",
    "headers": [
      {
        "level": 2,
        "title": "1. 隐式动画",
        "slug": "_1-隐式动画",
        "link": "#_1-隐式动画",
        "children": []
      },
      {
        "level": 2,
        "title": "2. 显式动画",
        "slug": "_2-显式动画",
        "link": "#_2-显式动画",
        "children": [
          {
            "level": 3,
            "title": "lowerBound upperBound",
            "slug": "lowerbound-upperbound",
            "link": "#lowerbound-upperbound",
            "children": []
          },
          {
            "level": 3,
            "title": "AnimationController普通用法",
            "slug": "animationcontroller普通用法",
            "link": "#animationcontroller普通用法",
            "children": []
          },
          {
            "level": 3,
            "title": "链式操作修改动画效果",
            "slug": "链式操作修改动画效果",
            "link": "#链式操作修改动画效果",
            "children": []
          }
        ]
      }
    ],
    "path": "/blog/Flutter/animation.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "组件",
    "headers": [
      {
        "level": 2,
        "title": "件用MaterialApp 和 Scaffold两个组件装饰App",
        "slug": "件用materialapp-和-scaffold两个组件装饰app",
        "link": "#件用materialapp-和-scaffold两个组件装饰app",
        "children": []
      },
      {
        "level": 2,
        "title": "把内容单独抽离成一个组件",
        "slug": "把内容单独抽离成一个组件",
        "link": "#把内容单独抽离成一个组件",
        "children": [
          {
            "level": 3,
            "title": "1. 无状态组件",
            "slug": "_1-无状态组件",
            "link": "#_1-无状态组件",
            "children": []
          },
          {
            "level": 3,
            "title": "2. 有状态组件",
            "slug": "_2-有状态组件",
            "link": "#_2-有状态组件",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "Container容器组件",
        "slug": "container容器组件",
        "link": "#container容器组件",
        "children": [
          {
            "level": 3,
            "title": "decoration:",
            "slug": "decoration",
            "link": "#decoration",
            "children": []
          },
          {
            "level": 3,
            "title": "padding 与margin",
            "slug": "padding-与margin",
            "link": "#padding-与margin",
            "children": []
          },
          {
            "level": 3,
            "title": "alignment",
            "slug": "alignment",
            "link": "#alignment",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "文本组件Text、RichText、TextField",
        "slug": "文本组件text、richtext、textfield",
        "link": "#文本组件text、richtext、textfield",
        "children": [
          {
            "level": 3,
            "title": "1. Text",
            "slug": "_1-text",
            "link": "#_1-text",
            "children": []
          },
          {
            "level": 3,
            "title": "2. RichText",
            "slug": "_2-richtext",
            "link": "#_2-richtext",
            "children": []
          },
          {
            "level": 3,
            "title": "3. TextField",
            "slug": "_3-textfield",
            "link": "#_3-textfield",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "图片组件Image、Icon、ImageIcon",
        "slug": "图片组件image、icon、imageicon",
        "link": "#图片组件image、icon、imageicon",
        "children": [
          {
            "level": 3,
            "title": "1. Image",
            "slug": "_1-image",
            "link": "#_1-image",
            "children": []
          },
          {
            "level": 3,
            "title": "2. Icon",
            "slug": "_2-icon",
            "link": "#_2-icon",
            "children": []
          },
          {
            "level": 3,
            "title": "3. ImageIcon",
            "slug": "_3-imageicon",
            "link": "#_3-imageicon",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "ListView 列表组件",
        "slug": "listview-列表组件",
        "link": "#listview-列表组件",
        "children": [
          {
            "level": 3,
            "title": "列表组件常用参数：",
            "slug": "列表组件常用参数",
            "link": "#列表组件常用参数",
            "children": []
          },
          {
            "level": 3,
            "title": "垂直列表：",
            "slug": "垂直列表",
            "link": "#垂直列表",
            "children": []
          },
          {
            "level": 3,
            "title": "水平列表 可以左右滑动：",
            "slug": "水平列表-可以左右滑动",
            "link": "#水平列表-可以左右滑动",
            "children": []
          },
          {
            "level": 3,
            "title": "ListView动态列表组件 以及循环动态数据",
            "slug": "listview动态列表组件-以及循环动态数据",
            "link": "#listview动态列表组件-以及循环动态数据",
            "children": []
          },
          {
            "level": 3,
            "title": "ListView.builder()实现动态列表",
            "slug": "listview-builder-实现动态列表",
            "link": "#listview-builder-实现动态列表",
            "children": []
          },
          {
            "level": 3,
            "title": "ListView.separated()实现动态列表",
            "slug": "listview-separated-实现动态列表",
            "link": "#listview-separated-实现动态列表",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "GridView网格布局组件",
        "slug": "gridview网格布局组件",
        "link": "#gridview网格布局组件",
        "children": [
          {
            "level": 3,
            "title": "常用属性：",
            "slug": "常用属性",
            "link": "#常用属性",
            "children": []
          },
          {
            "level": 3,
            "title": "GridView.count 实现网格布局",
            "slug": "gridview-count-实现网格布局",
            "link": "#gridview-count-实现网格布局",
            "children": []
          },
          {
            "level": 3,
            "title": "GridView.extent实现网格布局",
            "slug": "gridview-extent实现网格布局",
            "link": "#gridview-extent实现网格布局",
            "children": []
          },
          {
            "level": 3,
            "title": "GridView.builder实现动态列表",
            "slug": "gridview-builder实现动态列表",
            "link": "#gridview-builder实现动态列表",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "Paddiing组件",
        "slug": "paddiing组件",
        "link": "#paddiing组件",
        "children": []
      },
      {
        "level": 2,
        "title": "线性布局（Row和Column）",
        "slug": "线性布局-row和column",
        "link": "#线性布局-row和column",
        "children": [
          {
            "level": 3,
            "title": "1. Row 水平布局组件",
            "slug": "_1-row-水平布局组件",
            "link": "#_1-row-水平布局组件",
            "children": []
          },
          {
            "level": 3,
            "title": "2. Column垂直布局组件",
            "slug": "_2-column垂直布局组件",
            "link": "#_2-column垂直布局组件",
            "children": []
          },
          {
            "level": 3,
            "title": "double.infinity 和double.maxFinite",
            "slug": "double-infinity-和double-maxfinite",
            "link": "#double-infinity-和double-maxfinite",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "弹性布局（Flex  Expanded   Flexible）",
        "slug": "弹性布局-flex-expanded-flexible",
        "link": "#弹性布局-flex-expanded-flexible",
        "children": [
          {
            "level": 3,
            "title": "1. Flex组件",
            "slug": "_1-flex组件",
            "link": "#_1-flex组件",
            "children": []
          },
          {
            "level": 3,
            "title": "2. Expanded组件",
            "slug": "_2-expanded组件",
            "link": "#_2-expanded组件",
            "children": []
          },
          {
            "level": 3,
            "title": "3. Flexible组件",
            "slug": "_3-flexible组件",
            "link": "#_3-flexible组件",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "层叠布局（Stack、Align、 Positioned）",
        "slug": "层叠布局-stack、align、-positioned",
        "link": "#层叠布局-stack、align、-positioned",
        "children": [
          {
            "level": 3,
            "title": "1. Stack组件",
            "slug": "_1-stack组件",
            "link": "#_1-stack组件",
            "children": []
          },
          {
            "level": 3,
            "title": "2. Align组件",
            "slug": "_2-align组件",
            "link": "#_2-align组件",
            "children": []
          },
          {
            "level": 3,
            "title": "3. Positioned组件",
            "slug": "_3-positioned组件",
            "link": "#_3-positioned组件",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "AspectRatio组件",
        "slug": "aspectratio组件",
        "link": "#aspectratio组件",
        "children": []
      },
      {
        "level": 2,
        "title": "Card组件",
        "slug": "card组件",
        "link": "#card组件",
        "children": []
      },
      {
        "level": 2,
        "title": "按钮组件",
        "slug": "按钮组件",
        "link": "#按钮组件",
        "children": [
          {
            "level": 3,
            "title": "按钮组件的属性",
            "slug": "按钮组件的属性",
            "link": "#按钮组件的属性",
            "children": []
          },
          {
            "level": 3,
            "title": "ElevatedButton",
            "slug": "elevatedbutton",
            "link": "#elevatedbutton",
            "children": []
          },
          {
            "level": 3,
            "title": "TextButton",
            "slug": "textbutton",
            "link": "#textbutton",
            "children": []
          },
          {
            "level": 3,
            "title": "OutlinedButton",
            "slug": "outlinedbutton",
            "link": "#outlinedbutton",
            "children": []
          },
          {
            "level": 3,
            "title": "IconButton",
            "slug": "iconbutton",
            "link": "#iconbutton",
            "children": []
          },
          {
            "level": 3,
            "title": "带图标的按钮",
            "slug": "带图标的按钮",
            "link": "#带图标的按钮",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "Wrap组件",
        "slug": "wrap组件",
        "link": "#wrap组件",
        "children": []
      },
      {
        "level": 2,
        "title": "FloatingActionButton实现类似闲鱼App底 部导航凸起按钮",
        "slug": "floatingactionbutton实现类似闲鱼app底-部导航凸起按钮",
        "link": "#floatingactionbutton实现类似闲鱼app底-部导航凸起按钮",
        "children": []
      },
      {
        "level": 2,
        "title": "Drawer抽屉菜单",
        "slug": "drawer抽屉菜单",
        "link": "#drawer抽屉菜单",
        "children": [
          {
            "level": 3,
            "title": "DrawerHeader",
            "slug": "drawerheader",
            "link": "#drawerheader",
            "children": []
          },
          {
            "level": 3,
            "title": "UserAccountsDrawerHeader",
            "slug": "useraccountsdrawerheader",
            "link": "#useraccountsdrawerheader",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "AppBar      TabBar    TabBarView",
        "slug": "appbar-tabbar-tabbarview",
        "link": "#appbar-tabbar-tabbarview",
        "children": [
          {
            "level": 3,
            "title": "AppBar自定义顶部按钮图标、颜色",
            "slug": "appbar自定义顶部按钮图标、颜色",
            "link": "#appbar自定义顶部按钮图标、颜色",
            "children": []
          },
          {
            "level": 3,
            "title": "AppBar结合TabBar实现顶部Tab切换",
            "slug": "appbar结合tabbar实现顶部tab切换",
            "link": "#appbar结合tabbar实现顶部tab切换",
            "children": []
          },
          {
            "level": 3,
            "title": "Tabbar   TabBarView实现类似头条顶部导航",
            "slug": "tabbar-tabbarview实现类似头条顶部导航",
            "link": "#tabbar-tabbarview实现类似头条顶部导航",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "Dialog 弹窗",
        "slug": "dialog-弹窗",
        "link": "#dialog-弹窗",
        "children": [
          {
            "level": 3,
            "title": "1. AlertDialog",
            "slug": "_1-alertdialog",
            "link": "#_1-alertdialog",
            "children": []
          },
          {
            "level": 3,
            "title": "2. SimpleDialog、SimpleDialogOption",
            "slug": "_2-simpledialog、simpledialogoption",
            "link": "#_2-simpledialog、simpledialogoption",
            "children": []
          },
          {
            "level": 3,
            "title": "3. UnconstrainedBox + SizedBox",
            "slug": "_3-unconstrainedbox-sizedbox",
            "link": "#_3-unconstrainedbox-sizedbox",
            "children": []
          },
          {
            "level": 3,
            "title": "4. AboutDialog",
            "slug": "_4-aboutdialog",
            "link": "#_4-aboutdialog",
            "children": []
          },
          {
            "level": 3,
            "title": "5. showAboutDialog",
            "slug": "_5-showaboutdialog",
            "link": "#_5-showaboutdialog",
            "children": []
          },
          {
            "level": 3,
            "title": "6. showDialog",
            "slug": "_6-showdialog",
            "link": "#_6-showdialog",
            "children": []
          },
          {
            "level": 3,
            "title": "7. showGeneralDialog",
            "slug": "_7-showgeneraldialog",
            "link": "#_7-showgeneraldialog",
            "children": []
          },
          {
            "level": 3,
            "title": "8. 自定义Flutter Dialog 、Material组件、InkWell组件",
            "slug": "_8-自定义flutter-dialog-、material组件、inkwell组件",
            "link": "#_8-自定义flutter-dialog-、material组件、inkwell组件",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "PageView组件",
        "slug": "pageview组件",
        "link": "#pageview组件",
        "children": [
          {
            "level": 3,
            "title": "PageView()",
            "slug": "pageview",
            "link": "#pageview",
            "children": []
          },
          {
            "level": 3,
            "title": "PageView.builder()",
            "slug": "pageview-builder",
            "link": "#pageview-builder",
            "children": []
          },
          {
            "level": 3,
            "title": "PageView.custom()",
            "slug": "pageview-custom",
            "link": "#pageview-custom",
            "children": []
          },
          {
            "level": 3,
            "title": "轮播图",
            "slug": "轮播图",
            "link": "#轮播图",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "AnimatedList 实现动态列表",
        "slug": "animatedlist-实现动态列表",
        "link": "#animatedlist-实现动态列表",
        "children": []
      }
    ],
    "path": "/blog/Flutter/components.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "Key详解",
    "headers": [
      {
        "level": 2,
        "title": "1. 没有 Key 会发生什么奇怪现象",
        "slug": "_1-没有-key-会发生什么奇怪现象",
        "link": "#_1-没有-key-会发生什么奇怪现象",
        "children": []
      },
      {
        "level": 2,
        "title": "2. LocalKey、GlobalKey",
        "slug": "_2-localkey、globalkey",
        "link": "#_2-localkey、globalkey",
        "children": []
      },
      {
        "level": 2,
        "title": "3. GlobalKey 获取子组件",
        "slug": "_3-globalkey-获取子组件",
        "link": "#_3-globalkey-获取子组件",
        "children": []
      },
      {
        "level": 2,
        "title": "4. Widget Tree、Element Tree 和 RenderObject Tree",
        "slug": "_4-widget-tree、element-tree-和-renderobject-tree",
        "link": "#_4-widget-tree、element-tree-和-renderobject-tree",
        "children": []
      }
    ],
    "path": "/blog/Flutter/key.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "生命周期",
    "headers": [
      {
        "level": 2,
        "title": "1. initState()",
        "slug": "_1-initstate",
        "link": "#_1-initstate",
        "children": []
      },
      {
        "level": 2,
        "title": "2. didChangeDependencies()",
        "slug": "_2-didchangedependencies",
        "link": "#_2-didchangedependencies",
        "children": []
      },
      {
        "level": 2,
        "title": "3. build()",
        "slug": "_3-build",
        "link": "#_3-build",
        "children": []
      },
      {
        "level": 2,
        "title": "4. deactivate()",
        "slug": "_4-deactivate",
        "link": "#_4-deactivate",
        "children": []
      },
      {
        "level": 2,
        "title": "5. dispose()",
        "slug": "_5-dispose",
        "link": "#_5-dispose",
        "children": []
      },
      {
        "level": 2,
        "title": "6. didUpdateWidget()",
        "slug": "_6-didupdatewidget",
        "link": "#_6-didupdatewidget",
        "children": []
      },
      {
        "level": 2,
        "title": "7.setState()",
        "slug": "_7-setstate",
        "link": "#_7-setstate",
        "children": []
      }
    ],
    "path": "/blog/Flutter/lifecycle.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "路由",
    "headers": [
      {
        "level": 2,
        "title": "1. 路由介绍",
        "slug": "_1-路由介绍",
        "link": "#_1-路由介绍",
        "children": []
      },
      {
        "level": 2,
        "title": "2. 普通路由使用",
        "slug": "_2-普通路由使用",
        "link": "#_2-普通路由使用",
        "children": []
      },
      {
        "level": 2,
        "title": "3. 普通路由跳转传值",
        "slug": "_3-普通路由跳转传值",
        "link": "#_3-普通路由跳转传值",
        "children": []
      },
      {
        "level": 2,
        "title": "4. 命名路由",
        "slug": "_4-命名路由",
        "link": "#_4-命名路由",
        "children": []
      },
      {
        "level": 2,
        "title": "5. 命名路由传值",
        "slug": "_5-命名路由传值",
        "link": "#_5-命名路由传值",
        "children": []
      },
      {
        "level": 2,
        "title": "6. 命名路由单独抽离到一个文件",
        "slug": "_6-命名路由单独抽离到一个文件",
        "link": "#_6-命名路由单独抽离到一个文件",
        "children": []
      },
      {
        "level": 2,
        "title": "7.  返回上一级路由",
        "slug": "_7-返回上一级路由",
        "link": "#_7-返回上一级路由",
        "children": []
      },
      {
        "level": 2,
        "title": "8. 替换路由",
        "slug": "_8-替换路由",
        "link": "#_8-替换路由",
        "children": []
      },
      {
        "level": 2,
        "title": "9.  返回到根路由",
        "slug": "_9-返回到根路由",
        "link": "#_9-返回到根路由",
        "children": []
      },
      {
        "level": 2,
        "title": "10. Android 和Ios使用同样风格的路由跳转",
        "slug": "_10-android-和ios使用同样风格的路由跳转",
        "link": "#_10-android-和ios使用同样风格的路由跳转",
        "children": []
      },
      {
        "level": 2,
        "title": "11. 全局配置主题",
        "slug": "_11-全局配置主题",
        "link": "#_11-全局配置主题",
        "children": []
      }
    ],
    "path": "/blog/Flutter/router.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "环境搭建",
    "headers": [
      {
        "level": 2,
        "title": "1.获取 Flutter SDK",
        "slug": "_1-获取-flutter-sdk",
        "link": "#_1-获取-flutter-sdk",
        "children": []
      },
      {
        "level": 2,
        "title": "2.配置环境变量",
        "slug": "_2-配置环境变量",
        "link": "#_2-配置环境变量",
        "children": []
      },
      {
        "level": 2,
        "title": "3.执行 flutter doctor",
        "slug": "_3-执行-flutter-doctor",
        "link": "#_3-执行-flutter-doctor",
        "children": []
      },
      {
        "level": 2,
        "title": "4.安装Android Studio",
        "slug": "_4-安装android-studio",
        "link": "#_4-安装android-studio",
        "children": []
      },
      {
        "level": 2,
        "title": "5.配置Flutter镜像",
        "slug": "_5-配置flutter镜像",
        "link": "#_5-配置flutter镜像",
        "children": []
      },
      {
        "level": 2,
        "title": "6.问题",
        "slug": "_6-问题",
        "link": "#_6-问题",
        "children": [
          {
            "level": 3,
            "title": "Windows Version (Installed version of Windows is version 10 or higher)",
            "slug": "windows-version-installed-version-of-windows-is-version-10-or-higher",
            "link": "#windows-version-installed-version-of-windows-is-version-10-or-higher",
            "children": []
          },
          {
            "level": 3,
            "title": "Android toolchain - develop for Android devices",
            "slug": "android-toolchain-develop-for-android-devices",
            "link": "#android-toolchain-develop-for-android-devices",
            "children": []
          },
          {
            "level": 3,
            "title": "Visual Studio - develop for Windows",
            "slug": "visual-studio-develop-for-windows",
            "link": "#visual-studio-develop-for-windows",
            "children": []
          },
          {
            "level": 3,
            "title": "HTTP host not reachable",
            "slug": "http-host-not-reachable",
            "link": "#http-host-not-reachable",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "7. 项目运行",
        "slug": "_7-项目运行",
        "link": "#_7-项目运行",
        "children": []
      }
    ],
    "path": "/blog/Flutter/Started.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "数组API",
    "headers": [
      {
        "level": 2,
        "title": "1.添加数组",
        "slug": "_1-添加数组",
        "link": "#_1-添加数组",
        "children": [
          {
            "level": 3,
            "title": "push(val1, val2, ...)",
            "slug": "push-val1-val2",
            "link": "#push-val1-val2",
            "children": []
          },
          {
            "level": 3,
            "title": "unshift(val1, val2, ...)",
            "slug": "unshift-val1-val2",
            "link": "#unshift-val1-val2",
            "children": []
          },
          {
            "level": 3,
            "title": "splice(index, 0, val1, val2, ...)",
            "slug": "splice-index-0-val1-val2",
            "link": "#splice-index-0-val1-val2",
            "children": []
          },
          {
            "level": 3,
            "title": "array[array.length] = value;",
            "slug": "array-array-length-value",
            "link": "#array-array-length-value",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "2.删除元素",
        "slug": "_2-删除元素",
        "link": "#_2-删除元素",
        "children": [
          {
            "level": 3,
            "title": "pop()",
            "slug": "pop",
            "link": "#pop",
            "children": []
          },
          {
            "level": 3,
            "title": "shift()",
            "slug": "shift",
            "link": "#shift",
            "children": []
          },
          {
            "level": 3,
            "title": "splice(index, homany, val1, val2, ...)",
            "slug": "splice-index-homany-val1-val2",
            "link": "#splice-index-homany-val1-val2",
            "children": []
          },
          {
            "level": 3,
            "title": "array.length = len",
            "slug": "array-length-len",
            "link": "#array-length-len",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "3.排序",
        "slug": "_3-排序",
        "link": "#_3-排序",
        "children": [
          {
            "level": 3,
            "title": "reverse()",
            "slug": "reverse",
            "link": "#reverse",
            "children": []
          },
          {
            "level": 3,
            "title": "sort()",
            "slug": "sort",
            "link": "#sort",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "4.连接",
        "slug": "_4-连接",
        "link": "#_4-连接",
        "children": [
          {
            "level": 3,
            "title": "concat()",
            "slug": "concat",
            "link": "#concat",
            "children": []
          },
          {
            "level": 3,
            "title": "join()",
            "slug": "join",
            "link": "#join",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "5.截取",
        "slug": "_5-截取",
        "link": "#_5-截取",
        "children": [
          {
            "level": 3,
            "title": "slice()",
            "slug": "slice",
            "link": "#slice",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "6.转换",
        "slug": "_6-转换",
        "link": "#_6-转换",
        "children": [
          {
            "level": 3,
            "title": "toString()",
            "slug": "tostring",
            "link": "#tostring",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "7.遍历迭代",
        "slug": "_7-遍历迭代",
        "link": "#_7-遍历迭代",
        "children": [
          {
            "level": 3,
            "title": "forEach(callback)",
            "slug": "foreach-callback",
            "link": "#foreach-callback",
            "children": []
          },
          {
            "level": 3,
            "title": "map(callback)",
            "slug": "map-callback",
            "link": "#map-callback",
            "children": []
          },
          {
            "level": 3,
            "title": "some(callback)",
            "slug": "some-callback",
            "link": "#some-callback",
            "children": []
          },
          {
            "level": 3,
            "title": "every(callback)",
            "slug": "every-callback",
            "link": "#every-callback",
            "children": []
          },
          {
            "level": 3,
            "title": "filter(callback)",
            "slug": "filter-callback",
            "link": "#filter-callback",
            "children": []
          },
          {
            "level": 3,
            "title": "findIndex()",
            "slug": "findindex",
            "link": "#findindex",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "8.查找",
        "slug": "_8-查找",
        "link": "#_8-查找",
        "children": [
          {
            "level": 3,
            "title": "indexOf(searchValue, fromIndex)",
            "slug": "indexof-searchvalue-fromindex",
            "link": "#indexof-searchvalue-fromindex",
            "children": []
          },
          {
            "level": 3,
            "title": "lastIndexOf()",
            "slug": "lastindexof",
            "link": "#lastindexof",
            "children": []
          },
          {
            "level": 3,
            "title": "includes()",
            "slug": "includes",
            "link": "#includes",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "9.归并",
        "slug": "_9-归并",
        "link": "#_9-归并",
        "children": [
          {
            "level": 3,
            "title": "reduce()",
            "slug": "reduce",
            "link": "#reduce",
            "children": []
          },
          {
            "level": 3,
            "title": "reduceRight()",
            "slug": "reduceright",
            "link": "#reduceright",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "10.打平填充",
        "slug": "_10-打平填充",
        "link": "#_10-打平填充",
        "children": [
          {
            "level": 3,
            "title": "flat()",
            "slug": "flat",
            "link": "#flat",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "11.ES6新增API",
        "slug": "_11-es6新增api",
        "link": "#_11-es6新增api",
        "children": [
          {
            "level": 3,
            "title": "Array.from()",
            "slug": "array-from",
            "link": "#array-from",
            "children": []
          },
          {
            "level": 3,
            "title": "Array.prototype.fill()",
            "slug": "array-prototype-fill",
            "link": "#array-prototype-fill",
            "children": []
          }
        ]
      }
    ],
    "path": "/blog/JsApi/array.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "JavaScript 新增方法",
    "headers": [
      {
        "level": 2,
        "title": "1. Object.is()",
        "slug": "_1-object-is",
        "link": "#_1-object-is",
        "children": []
      },
      {
        "level": 2,
        "title": "2. Object.assign()",
        "slug": "_2-object-assign",
        "link": "#_2-object-assign",
        "children": []
      },
      {
        "level": 2,
        "title": "3. Object.keys()",
        "slug": "_3-object-keys",
        "link": "#_3-object-keys",
        "children": []
      },
      {
        "level": 2,
        "title": "4. Object.values()",
        "slug": "_4-object-values",
        "link": "#_4-object-values",
        "children": []
      },
      {
        "level": 2,
        "title": "5. Object.entries()",
        "slug": "_5-object-entries",
        "link": "#_5-object-entries",
        "children": []
      },
      {
        "level": 2,
        "title": "6.Object.fromEntries()",
        "slug": "_6-object-fromentries",
        "link": "#_6-object-fromentries",
        "children": []
      },
      {
        "level": 2,
        "title": "7.Object.defineProperty()",
        "slug": "_7-object-defineproperty",
        "link": "#_7-object-defineproperty",
        "children": []
      }
    ],
    "path": "/blog/JsApi/es6.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "Math",
    "headers": [
      {
        "level": 2,
        "title": "1.只保留整数部分（丢弃小数部分）",
        "slug": "_1-只保留整数部分-丢弃小数部分",
        "link": "#_1-只保留整数部分-丢弃小数部分",
        "children": []
      },
      {
        "level": 2,
        "title": "2.向下取整（<= 该数值的最大整数）",
        "slug": "_2-向下取整-该数值的最大整数",
        "link": "#_2-向下取整-该数值的最大整数",
        "children": []
      },
      {
        "level": 2,
        "title": "3.向上取整（有小数，整数就+1）",
        "slug": "_3-向上取整-有小数-整数就-1",
        "link": "#_3-向上取整-有小数-整数就-1",
        "children": []
      },
      {
        "level": 2,
        "title": "4.四舍五入（小数部分）",
        "slug": "_4-四舍五入-小数部分",
        "link": "#_4-四舍五入-小数部分",
        "children": []
      },
      {
        "level": 2,
        "title": "5.绝对值",
        "slug": "_5-绝对值",
        "link": "#_5-绝对值",
        "children": []
      },
      {
        "level": 2,
        "title": "6.返回两者中的较大值",
        "slug": "_6-返回两者中的较大值",
        "link": "#_6-返回两者中的较大值",
        "children": []
      },
      {
        "level": 2,
        "title": "7.返回两者中的较小值",
        "slug": "_7-返回两者中的较小值",
        "link": "#_7-返回两者中的较小值",
        "children": []
      },
      {
        "level": 2,
        "title": "8.随机数（0-1）",
        "slug": "_8-随机数-0-1",
        "link": "#_8-随机数-0-1",
        "children": []
      }
    ],
    "path": "/blog/JsApi/",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "字符串API",
    "headers": [
      {
        "level": 2,
        "title": "1.字符串类型转换",
        "slug": "_1-字符串类型转换",
        "link": "#_1-字符串类型转换",
        "children": [
          {
            "level": 3,
            "title": "原始数据类型转 string",
            "slug": "原始数据类型转-string",
            "link": "#原始数据类型转-string",
            "children": []
          },
          {
            "level": 3,
            "title": "string 转其他类型",
            "slug": "string-转其他类型",
            "link": "#string-转其他类型",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "2.字符串分割",
        "slug": "_2-字符串分割",
        "link": "#_2-字符串分割",
        "children": [
          {
            "level": 3,
            "title": "split()",
            "slug": "split",
            "link": "#split",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "3.获取字符串长度",
        "slug": "_3-获取字符串长度",
        "link": "#_3-获取字符串长度",
        "children": [
          {
            "level": 3,
            "title": "length属性",
            "slug": "length属性",
            "link": "#length属性",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "4.查询子字符串",
        "slug": "_4-查询子字符串",
        "link": "#_4-查询子字符串",
        "children": [
          {
            "level": 3,
            "title": "indexOf()",
            "slug": "indexof",
            "link": "#indexof",
            "children": []
          },
          {
            "level": 3,
            "title": "lastIndexOf()",
            "slug": "lastindexof",
            "link": "#lastindexof",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "5.字符串替换",
        "slug": "_5-字符串替换",
        "link": "#_5-字符串替换",
        "children": [
          {
            "level": 3,
            "title": "replace()",
            "slug": "replace",
            "link": "#replace",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "6.查找给定位置的字符或其字符编码值",
        "slug": "_6-查找给定位置的字符或其字符编码值",
        "link": "#_6-查找给定位置的字符或其字符编码值",
        "children": [
          {
            "level": 3,
            "title": "charAt()",
            "slug": "charat",
            "link": "#charat",
            "children": []
          },
          {
            "level": 3,
            "title": "charCodeAt",
            "slug": "charcodeat",
            "link": "#charcodeat",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "7.字符串连接",
        "slug": "_7-字符串连接",
        "link": "#_7-字符串连接",
        "children": [
          {
            "level": 3,
            "title": "加号 +",
            "slug": "加号",
            "link": "#加号",
            "children": []
          },
          {
            "level": 3,
            "title": "concat()",
            "slug": "concat",
            "link": "#concat",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "8.字符串提取",
        "slug": "_8-字符串提取",
        "link": "#_8-字符串提取",
        "children": [
          {
            "level": 3,
            "title": "slice()",
            "slug": "slice",
            "link": "#slice",
            "children": []
          },
          {
            "level": 3,
            "title": "substring()",
            "slug": "substring",
            "link": "#substring",
            "children": []
          },
          {
            "level": 3,
            "title": "substr()",
            "slug": "substr",
            "link": "#substr",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "9.字符串大小写转换",
        "slug": "_9-字符串大小写转换",
        "link": "#_9-字符串大小写转换",
        "children": [
          {
            "level": 3,
            "title": "toLowerCase()",
            "slug": "tolowercase",
            "link": "#tolowercase",
            "children": []
          },
          {
            "level": 3,
            "title": "toUpperCase()",
            "slug": "touppercase",
            "link": "#touppercase",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "10. 字符串匹配",
        "slug": "_10-字符串匹配",
        "link": "#_10-字符串匹配",
        "children": [
          {
            "level": 3,
            "title": "match()",
            "slug": "match",
            "link": "#match",
            "children": []
          },
          {
            "level": 3,
            "title": "search()",
            "slug": "search",
            "link": "#search",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "11.字符串比较",
        "slug": "_11-字符串比较",
        "link": "#_11-字符串比较",
        "children": [
          {
            "level": 3,
            "title": "localeCompare()",
            "slug": "localecompare",
            "link": "#localecompare",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "12.补齐字符串的长度",
        "slug": "_12-补齐字符串的长度",
        "link": "#_12-补齐字符串的长度",
        "children": [
          {
            "level": 3,
            "title": "padStart()",
            "slug": "padstart",
            "link": "#padstart",
            "children": []
          },
          {
            "level": 3,
            "title": "padEnd()",
            "slug": "padend",
            "link": "#padend",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "13.移除字符串首尾空白符",
        "slug": "_13-移除字符串首尾空白符",
        "link": "#_13-移除字符串首尾空白符",
        "children": [
          {
            "level": 3,
            "title": "trimStart()",
            "slug": "trimstart",
            "link": "#trimstart",
            "children": []
          },
          {
            "level": 3,
            "title": "trimEnd()",
            "slug": "trimend",
            "link": "#trimend",
            "children": []
          }
        ]
      }
    ],
    "path": "/blog/JsApi/string.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "css",
    "headers": [
      {
        "level": 2,
        "title": "1.快速居中对齐",
        "slug": "_1-快速居中对齐",
        "link": "#_1-快速居中对齐",
        "children": []
      },
      {
        "level": 2,
        "title": "2.padding与margin有什么不同",
        "slug": "_2-padding与margin有什么不同",
        "link": "#_2-padding与margin有什么不同",
        "children": []
      },
      {
        "level": 2,
        "title": "3.vw 与 % 有什么区别",
        "slug": "_3-vw-与-有什么区别",
        "link": "#_3-vw-与-有什么区别",
        "children": []
      },
      {
        "level": 2,
        "title": "4.行内元素与块级元素",
        "slug": "_4-行内元素与块级元素",
        "link": "#_4-行内元素与块级元素",
        "children": []
      },
      {
        "level": 2,
        "title": "5.如何让浏览器支持小字体",
        "slug": "_5-如何让浏览器支持小字体",
        "link": "#_5-如何让浏览器支持小字体",
        "children": []
      }
    ],
    "path": "/blog/Interview/css.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "JavaScript",
    "headers": [
      {
        "level": 2,
        "title": "1.let 与  var 的区别",
        "slug": "_1-let-与-var-的区别",
        "link": "#_1-let-与-var-的区别",
        "children": []
      },
      {
        "level": 2,
        "title": "2.深拷贝与浅拷贝",
        "slug": "_2-深拷贝与浅拷贝",
        "link": "#_2-深拷贝与浅拷贝",
        "children": []
      },
      {
        "level": 2,
        "title": "3.懒加载",
        "slug": "_3-懒加载",
        "link": "#_3-懒加载",
        "children": []
      },
      {
        "level": 2,
        "title": "4.this的指向问题",
        "slug": "_4-this的指向问题",
        "link": "#_4-this的指向问题",
        "children": []
      },
      {
        "level": 2,
        "title": "5.bind、call、apply的区别",
        "slug": "_5-bind、call、apply的区别",
        "link": "#_5-bind、call、apply的区别",
        "children": [
          {
            "level": 3,
            "title": "闭包",
            "slug": "闭包",
            "link": "#闭包",
            "children": []
          },
          {
            "level": 3,
            "title": "给一个变量new一个class时发生了什么",
            "slug": "给一个变量new一个class时发生了什么",
            "link": "#给一个变量new一个class时发生了什么",
            "children": []
          },
          {
            "level": 3,
            "title": "手写一个Promise",
            "slug": "手写一个promise",
            "link": "#手写一个promise",
            "children": []
          }
        ]
      }
    ],
    "path": "/blog/Interview/JavaScript.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "面试",
    "headers": [
      {
        "level": 2,
        "title": "css",
        "slug": "css",
        "link": "#css",
        "children": [
          {
            "level": 3,
            "title": "1.快速居中对齐",
            "slug": "_1-快速居中对齐",
            "link": "#_1-快速居中对齐",
            "children": []
          },
          {
            "level": 3,
            "title": "2.padding与margin有什么不同",
            "slug": "_2-padding与margin有什么不同",
            "link": "#_2-padding与margin有什么不同",
            "children": []
          },
          {
            "level": 3,
            "title": "3.vw 与 % 有什么区别",
            "slug": "_3-vw-与-有什么区别",
            "link": "#_3-vw-与-有什么区别",
            "children": []
          },
          {
            "level": 3,
            "title": "4.行内元素与块级元素",
            "slug": "_4-行内元素与块级元素",
            "link": "#_4-行内元素与块级元素",
            "children": []
          },
          {
            "level": 3,
            "title": "5.如何让浏览器支持小字体",
            "slug": "_5-如何让浏览器支持小字体",
            "link": "#_5-如何让浏览器支持小字体",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "JavaScript",
        "slug": "javascript",
        "link": "#javascript",
        "children": [
          {
            "level": 3,
            "title": "1.let 与  var 的区别",
            "slug": "_1-let-与-var-的区别",
            "link": "#_1-let-与-var-的区别",
            "children": []
          },
          {
            "level": 3,
            "title": "2.深拷贝与浅拷贝",
            "slug": "_2-深拷贝与浅拷贝",
            "link": "#_2-深拷贝与浅拷贝",
            "children": []
          },
          {
            "level": 3,
            "title": "3.懒加载",
            "slug": "_3-懒加载",
            "link": "#_3-懒加载",
            "children": []
          },
          {
            "level": 3,
            "title": "4.this的指向问题",
            "slug": "_4-this的指向问题",
            "link": "#_4-this的指向问题",
            "children": []
          },
          {
            "level": 3,
            "title": "5.bind、call、apply的区别",
            "slug": "_5-bind、call、apply的区别",
            "link": "#_5-bind、call、apply的区别",
            "children": []
          },
          {
            "level": 3,
            "title": "闭包",
            "slug": "闭包",
            "link": "#闭包",
            "children": []
          },
          {
            "level": 3,
            "title": "给一个变量new一个class时发生了什么",
            "slug": "给一个变量new一个class时发生了什么",
            "link": "#给一个变量new一个class时发生了什么",
            "children": []
          },
          {
            "level": 3,
            "title": "手写一个Promise",
            "slug": "手写一个promise",
            "link": "#手写一个promise",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "WEB",
        "slug": "web",
        "link": "#web",
        "children": [
          {
            "level": 3,
            "title": "1.在浏览器输入URL并回车后都发生了什么",
            "slug": "_1-在浏览器输入url并回车后都发生了什么",
            "link": "#_1-在浏览器输入url并回车后都发生了什么",
            "children": []
          },
          {
            "level": 3,
            "title": "2.从那些地方做性能优化",
            "slug": "_2-从那些地方做性能优化",
            "link": "#_2-从那些地方做性能优化",
            "children": []
          }
        ]
      },
      {
        "level": 2,
        "title": "VUE",
        "slug": "vue",
        "link": "#vue",
        "children": [
          {
            "level": 3,
            "title": "MVVM",
            "slug": "mvvm",
            "link": "#mvvm",
            "children": []
          },
          {
            "level": 3,
            "title": "v-modle",
            "slug": "v-modle",
            "link": "#v-modle",
            "children": []
          },
          {
            "level": 3,
            "title": "制作npm插件",
            "slug": "制作npm插件",
            "link": "#制作npm插件",
            "children": []
          },
          {
            "level": 3,
            "title": "nextTick",
            "slug": "nexttick",
            "link": "#nexttick",
            "children": []
          }
        ]
      }
    ],
    "path": "/blog/Interview/",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "VUE",
    "headers": [
      {
        "level": 2,
        "title": "MVVM",
        "slug": "mvvm",
        "link": "#mvvm",
        "children": []
      },
      {
        "level": 2,
        "title": "v-modle",
        "slug": "v-modle",
        "link": "#v-modle",
        "children": []
      },
      {
        "level": 2,
        "title": "制作npm插件",
        "slug": "制作npm插件",
        "link": "#制作npm插件",
        "children": []
      },
      {
        "level": 2,
        "title": "nextTick",
        "slug": "nexttick",
        "link": "#nexttick",
        "children": []
      }
    ],
    "path": "/blog/Interview/VUE.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "WEB",
    "headers": [
      {
        "level": 2,
        "title": "1.在浏览器输入URL并回车后都发生了什么",
        "slug": "_1-在浏览器输入url并回车后都发生了什么",
        "link": "#_1-在浏览器输入url并回车后都发生了什么",
        "children": []
      },
      {
        "level": 2,
        "title": "2.从那些地方做性能优化",
        "slug": "_2-从那些地方做性能优化",
        "link": "#_2-从那些地方做性能优化",
        "children": []
      }
    ],
    "path": "/blog/Interview/WEB.html",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "常用js封装方法",
    "headers": [
      {
        "level": 2,
        "title": "在指定位置插入字符串",
        "slug": "在指定位置插入字符串",
        "link": "#在指定位置插入字符串",
        "children": []
      },
      {
        "level": 2,
        "title": "判断元素有没有子元素 (标签元素)",
        "slug": "判断元素有没有子元素-标签元素",
        "link": "#判断元素有没有子元素-标签元素",
        "children": []
      },
      {
        "level": 2,
        "title": "深拷贝",
        "slug": "深拷贝",
        "link": "#深拷贝",
        "children": []
      },
      {
        "level": 2,
        "title": "分割数组",
        "slug": "分割数组",
        "link": "#分割数组",
        "children": []
      },
      {
        "level": 2,
        "title": "数组最大值最小值",
        "slug": "数组最大值最小值",
        "link": "#数组最大值最小值",
        "children": []
      },
      {
        "level": 2,
        "title": "数组顺序打乱",
        "slug": "数组顺序打乱",
        "link": "#数组顺序打乱",
        "children": []
      },
      {
        "level": 2,
        "title": "从数组中随机获取元素",
        "slug": "从数组中随机获取元素",
        "link": "#从数组中随机获取元素",
        "children": []
      },
      {
        "level": 2,
        "title": "判断数组（字符串）出现最多的元素和次数",
        "slug": "判断数组-字符串-出现最多的元素和次数",
        "link": "#判断数组-字符串-出现最多的元素和次数",
        "children": []
      },
      {
        "level": 2,
        "title": "筛选数组",
        "slug": "筛选数组",
        "link": "#筛选数组",
        "children": []
      },
      {
        "level": 2,
        "title": "数组去重",
        "slug": "数组去重",
        "link": "#数组去重",
        "children": []
      },
      {
        "level": 2,
        "title": "二维数组去重（二维数组对象去除完全相同的重复对象）",
        "slug": "二维数组去重-二维数组对象去除完全相同的重复对象",
        "link": "#二维数组去重-二维数组对象去除完全相同的重复对象",
        "children": []
      },
      {
        "level": 2,
        "title": "二维对象数组去重（根据某一属性）",
        "slug": "二维对象数组去重-根据某一属性",
        "link": "#二维对象数组去重-根据某一属性",
        "children": []
      },
      {
        "level": 2,
        "title": "判断数据类型",
        "slug": "判断数据类型",
        "link": "#判断数据类型",
        "children": []
      },
      {
        "level": 2,
        "title": "树形结构 ---- > 扁平化数据",
        "slug": "树形结构-扁平化数据",
        "link": "#树形结构-扁平化数据",
        "children": []
      },
      {
        "level": 2,
        "title": "已知树节点获取树的节点路径",
        "slug": "已知树节点获取树的节点路径",
        "link": "#已知树节点获取树的节点路径",
        "children": []
      },
      {
        "level": 2,
        "title": "防抖",
        "slug": "防抖",
        "link": "#防抖",
        "children": []
      },
      {
        "level": 2,
        "title": "节流",
        "slug": "节流",
        "link": "#节流",
        "children": []
      },
      {
        "level": 2,
        "title": "获取地址栏参数",
        "slug": "获取地址栏参数",
        "link": "#获取地址栏参数",
        "children": []
      },
      {
        "level": 2,
        "title": "判断是否是移动设备",
        "slug": "判断是否是移动设备",
        "link": "#判断是否是移动设备",
        "children": []
      },
      {
        "level": 2,
        "title": "判断当前浏览器类型",
        "slug": "判断当前浏览器类型",
        "link": "#判断当前浏览器类型",
        "children": []
      },
      {
        "level": 2,
        "title": "绑定事件的兼容代码",
        "slug": "绑定事件的兼容代码",
        "link": "#绑定事件的兼容代码",
        "children": []
      },
      {
        "level": 2,
        "title": "兼容ie和其它浏览器阻止元素默认事件的方法",
        "slug": "兼容ie和其它浏览器阻止元素默认事件的方法",
        "link": "#兼容ie和其它浏览器阻止元素默认事件的方法",
        "children": []
      },
      {
        "level": 2,
        "title": "兼容多浏览器的获取当前滚动条位置的方法",
        "slug": "兼容多浏览器的获取当前滚动条位置的方法",
        "link": "#兼容多浏览器的获取当前滚动条位置的方法",
        "children": []
      },
      {
        "level": 2,
        "title": "解绑事件的兼容代码",
        "slug": "解绑事件的兼容代码",
        "link": "#解绑事件的兼容代码",
        "children": []
      },
      {
        "level": 2,
        "title": "取消冒泡的兼容代码",
        "slug": "取消冒泡的兼容代码",
        "link": "#取消冒泡的兼容代码",
        "children": []
      },
      {
        "level": 2,
        "title": "计算相隔时间",
        "slug": "计算相隔时间",
        "link": "#计算相隔时间",
        "children": []
      },
      {
        "level": 2,
        "title": "判断当前时间是否在某个时间区间内",
        "slug": "判断当前时间是否在某个时间区间内",
        "link": "#判断当前时间是否在某个时间区间内",
        "children": []
      },
      {
        "level": 2,
        "title": "时间格式函数",
        "slug": "时间格式函数",
        "link": "#时间格式函数",
        "children": []
      },
      {
        "level": 2,
        "title": "倒计时的封装函数",
        "slug": "倒计时的封装函数",
        "link": "#倒计时的封装函数",
        "children": []
      },
      {
        "level": 2,
        "title": "时间距今函数封装，格式化时间成文字",
        "slug": "时间距今函数封装-格式化时间成文字",
        "link": "#时间距今函数封装-格式化时间成文字",
        "children": []
      },
      {
        "level": 2,
        "title": "数组对象中相同的id进行分类",
        "slug": "数组对象中相同的id进行分类",
        "link": "#数组对象中相同的id进行分类",
        "children": []
      },
      {
        "level": 2,
        "title": "判断数组对象中所有属性是否为空",
        "slug": "判断数组对象中所有属性是否为空",
        "link": "#判断数组对象中所有属性是否为空",
        "children": []
      },
      {
        "level": 2,
        "title": "查找字符串出现次数",
        "slug": "查找字符串出现次数",
        "link": "#查找字符串出现次数",
        "children": []
      },
      {
        "level": 2,
        "title": "兼容所有浏览器，清除字符串前后空格",
        "slug": "兼容所有浏览器-清除字符串前后空格",
        "link": "#兼容所有浏览器-清除字符串前后空格",
        "children": []
      },
      {
        "level": 2,
        "title": "手机号隐藏中间四位",
        "slug": "手机号隐藏中间四位",
        "link": "#手机号隐藏中间四位",
        "children": []
      },
      {
        "level": 2,
        "title": "将金额数字转为汉字大写",
        "slug": "将金额数字转为汉字大写",
        "link": "#将金额数字转为汉字大写",
        "children": []
      },
      {
        "level": 2,
        "title": "阿拉伯数字转中文大写数字",
        "slug": "阿拉伯数字转中文大写数字",
        "link": "#阿拉伯数字转中文大写数字",
        "children": []
      },
      {
        "level": 2,
        "title": "金额字段格式化",
        "slug": "金额字段格式化",
        "link": "#金额字段格式化",
        "children": []
      },
      {
        "level": 2,
        "title": "随机生成指定区间的整数或小数",
        "slug": "随机生成指定区间的整数或小数",
        "link": "#随机生成指定区间的整数或小数",
        "children": []
      },
      {
        "level": 2,
        "title": "生成随机字符串",
        "slug": "生成随机字符串",
        "link": "#生成随机字符串",
        "children": []
      },
      {
        "level": 2,
        "title": "随机生成uuid",
        "slug": "随机生成uuid",
        "link": "#随机生成uuid",
        "children": []
      },
      {
        "level": 2,
        "title": "获取页面可视宽度、高度",
        "slug": "获取页面可视宽度、高度",
        "link": "#获取页面可视宽度、高度",
        "children": []
      },
      {
        "level": 2,
        "title": "查看屏幕尺寸",
        "slug": "查看屏幕尺寸",
        "link": "#查看屏幕尺寸",
        "children": []
      },
      {
        "level": 2,
        "title": "递归遍历 json 所有数据",
        "slug": "递归遍历-json-所有数据",
        "link": "#递归遍历-json-所有数据",
        "children": []
      },
      {
        "level": 2,
        "title": "图片文件流转base64",
        "slug": "图片文件流转base64",
        "link": "#图片文件流转base64",
        "children": []
      },
      {
        "level": 2,
        "title": "转时间戳",
        "slug": "转时间戳",
        "link": "#转时间戳",
        "children": []
      },
      {
        "level": 2,
        "title": "Moment计算时间差",
        "slug": "moment计算时间差",
        "link": "#moment计算时间差",
        "children": []
      },
      {
        "level": 2,
        "title": "精度丢失",
        "slug": "精度丢失",
        "link": "#精度丢失",
        "children": []
      }
    ],
    "path": "/blog/Js/",
    "pathLocale": "/",
    "extraFields": []
  },
  {
    "title": "",
    "headers": [],
    "path": "/404.html",
    "pathLocale": "/",
    "extraFields": []
  }
]

if (import.meta.webpackHot) {
  import.meta.webpackHot.accept()
  if (__VUE_HMR_RUNTIME__.updateSearchIndex) {
    __VUE_HMR_RUNTIME__.updateSearchIndex(searchIndex)
  }
}

if (import.meta.hot) {
  import.meta.hot.accept(({ searchIndex }) => {
    __VUE_HMR_RUNTIME__.updateSearchIndex(searchIndex)
  })
}
